home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 13 / AMIGAplus Sonderheft 13 (1998)(ICP)(DE)[!].iso / rexx / tree.m2i < prev    next >
Text File  |  1997-11-18  |  980b  |  75 lines

  1. /* affichage arborescence des Menus de M2I5 */
  2. /* Thierry Schmitt Avril 1996*/
  3.  
  4. ADDRESS "M2IPort.Rexx"
  5. OPTIONS RESULTS
  6.  
  7. m2ipenv = ":"
  8. tabs = "|"
  9.  
  10. SAY ":"
  11.  
  12. CALL explo
  13.  
  14. SAY ""
  15.  
  16. EXIT
  17.  
  18.  
  19.  
  20. explo: PROCEDURE EXPOSE m2ipenv tabs
  21.  
  22.   posdock = 1
  23.  
  24.   m2ipath = m2ipenv
  25.   blks = tabs
  26.  
  27.   nopipe = LEFT(blks,LENGTH(blks)-1)
  28.  
  29.   COUNT m2ipath||"*"
  30.   whoops = RC
  31.   nbitems = RESULT
  32.  
  33.   DO WHILE whats~=6
  34.  
  35.     GETNAME m2ipath||posdock
  36.     whats = RC
  37.     ndock = RESULT
  38.  
  39.     IF whats = 6 THEN BREAK
  40.  
  41.     IF RIGHT(ndock,2)~=".D" THEN DO
  42.         GET TOOL m2ipath||posdock
  43.         dosname = RESULT
  44.     END
  45.  
  46.     SAY blks
  47.     SAY nopipe||LEFT(ndock,LENGTH(ndock)-2)
  48.  
  49.     IF (LEFT(ndock,1)="0" & RIGHT(ndock,2)~=".D") THEN SAY blks||dosname
  50.  
  51.     nbitems = nbitems - 1
  52.  
  53.     IF RIGHT(ndock,2)=".D" THEN DO
  54.         m2ipenv = m2ipath||posdock||"/"
  55.  
  56.         IF nbitems = 0 THEN DO
  57.             tabs = nopipe||" "||COPIES(" ",LENGTH(ndock)-3)||"|"
  58.         END
  59.         ELSE DO
  60.             tabs = blks||COPIES(" ",LENGTH(ndock)-3)||"|"
  61.         END
  62.  
  63.  
  64.         CALL explo
  65.  
  66.     END
  67.  
  68.     posdock = posdock + 1
  69.  
  70.  
  71.   END
  72.  
  73. RETURN
  74.  
  75.